home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr37 / mnr_news.zip / NEWS.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-01-08  |  5KB  |  288 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER001
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  TINTEGER004(9)
  23.     Integer  TINTEGER005(9)
  24.     Integer  TINTEGER006(9)
  25.     Integer  TINTEGER007(9)
  26.     Integer  TINTEGER008(9)
  27.     Integer  TINTEGER009(9)
  28.     Integer  TINTEGER010(9)
  29.     Integer  TINTEGER011(9)
  30.     Integer  TINTEGER012(9)
  31.     String   STRING001
  32.     String   STRING002
  33.     String   STRING003
  34.     String   STRING004
  35.     String   TSTRING005(9)
  36.     String   TSTRING006(9)
  37.     String   TSTRING007(9)
  38.     String   TSTRING008(20)
  39.     String   STRING009
  40.  
  41. ;------------------------------------------------------------------------------
  42.  
  43.     INTEGER003 = 1
  44.     Gosub LABEL006
  45.     :LABEL001
  46.     FOpen 1, PPEPath() + "DATA\NEWS.DAT", 0, 2
  47.     For INTEGER002 = 1 To 8
  48.         FGet 1, TSTRING007(INTEGER002)
  49.     Next
  50.     FClose 1
  51.     FOpen 1, PPEPath() + "DATA\TITLE.DAT", 0, 2
  52.     FGet 1, STRING009
  53.     FClose 1
  54.     Cls
  55.     DispFile PPEPath() + "NEWS.ANS", 2
  56.     AnsiPos 45, 21
  57.     Print STRING009
  58.     For INTEGER002 = 1 To 8
  59.         AnsiPos 19, INTEGER002 + 13
  60.         Print "@X0D" + String(INTEGER002)
  61.     Next
  62.     For INTEGER002 = 1 To 8
  63.         AnsiPos 24, INTEGER002 + 13
  64.         Print TSTRING007(INTEGER002)
  65.         Gosub LABEL012
  66.     Next
  67.     For INTEGER002 = 1 To 8
  68.         AnsiPos 36, INTEGER002 + 13
  69.         Gosub LABEL008
  70.         If (TINTEGER004(INTEGER002) == 1) Then
  71.             Print "@X05OLD"
  72.             Continue
  73.         Endif
  74.         If (TINTEGER004(INTEGER002) <> 1) Then
  75.             Print "@X0DNEW"
  76.         Endif
  77.     Next
  78.     AnsiPos 1, 7
  79.     Print "@X0DRead Date:"
  80.     Gosub LABEL002
  81.     Goto LABEL003
  82.     :LABEL002
  83.     If (TSTRING005(INTEGER003) <> "") Then
  84.         AnsiPos 1, 8
  85.         Print TSTRING005(INTEGER003)
  86.         Return
  87.     Endif
  88.     AnsiPos 1, 8
  89.     Print "00-00-00"
  90.     Return
  91.     :LABEL003
  92.     AnsiPos 19, INTEGER003 + 13
  93.     Print "@X08√"
  94.     STRING001 = Upper(Inkey())
  95.     If (STRING001 == "") Goto LABEL003
  96.     Select Case (STRING001)
  97.         Case "UP"
  98.             AnsiPos 19, INTEGER003 + 13
  99.             Print "@X0D" + String(INTEGER003)
  100.             INTEGER003 = INTEGER003 - 1
  101.         Case "DOWN"
  102.             AnsiPos 19, INTEGER003 + 13
  103.             Print "@X0D" + String(INTEGER003)
  104.             INTEGER003 = INTEGER003 + 1
  105.     End Select
  106.     If (INTEGER003 > 8) INTEGER003 = 1
  107.     If (INTEGER003 < 1) INTEGER003 = 8
  108.     If ((STRING001 == "Q") || (STRING001 == Chr(27))) Goto LABEL007
  109.     Gosub LABEL002
  110.     If ((STRING001 == Chr(13)) && (INTEGER003 > 0)) Goto LABEL004
  111.     If (STRING001 == "P") Goto LABEL009
  112.     Goto LABEL003
  113.     :LABEL004
  114.     Cls
  115.     TINTEGER004(INTEGER003) = 1
  116.     TSTRING005(INTEGER003) = Date()
  117.     DispFile PPEPath() + "DATA\" + String(INTEGER003), 2
  118.     AnsiPos 0, 23
  119.     Wait
  120.     Goto LABEL001
  121.     :LABEL005
  122.     STRING002 = U_Name()
  123.     STRING003 = STRING002
  124.     STRING003 = Replace(STRING003, " ", "_")
  125.     STRING004 = STRING002
  126.     STRING004 = Replace(STRING003, ".", "_")
  127.     STRING002 = STRING004
  128.     Return
  129.     :LABEL006
  130.     Gosub LABEL005
  131.     If (!Exist(PPEPath() + "READ\" + STRING002)) Return
  132.     FOpen 1, PPEPath() + "READ\" + STRING002, 0, 0
  133.     For INTEGER002 = 1 To 8
  134.         FGet 1, TSTRING006(INTEGER002)
  135.         TINTEGER004(INTEGER002) = Left(TSTRING006(INTEGER002), Len(TSTRING006(INTEGER002)) - 9)
  136.         TSTRING005(INTEGER002) = Right(TSTRING006(INTEGER002), Len(TSTRING006(INTEGER002)) - 2)
  137.         Gosub LABEL012
  138.     Next
  139.     FClose 1
  140.     Return
  141.     :LABEL007
  142.     Cls
  143.     Gosub LABEL005
  144.     FCreate 1, PPEPath() + "READ\" + STRING002, 1, 0
  145.     For INTEGER002 = 1 To 8
  146.         FPutLn 1, String(TINTEGER004(INTEGER002)) + "," + TSTRING005(INTEGER002)
  147.     Next
  148.     FClose 1
  149.     End
  150.     :LABEL008
  151.     TINTEGER005(INTEGER002) = Strip(TSTRING005(INTEGER002), "-")
  152.     TINTEGER006(INTEGER002) = Strip(TSTRING007(INTEGER002), "-")
  153.     Return
  154.     :LABEL009
  155.     Cls
  156.     DispFile PPEPath() + "POST8.ANS", 2
  157.     AnsiPos 1, 5
  158.     STRING009 = ""
  159.     InputStr "News Title: _", STRING009, 7, 30, Mask_Ascii(), 64
  160.     If (STRING009 == "") Goto LABEL001
  161.     Cls
  162.     INTEGER002 = 1
  163.     DispFile PPEPath() + "POST8.ANS", 2
  164.     AnsiPos 0, 5
  165.     :LABEL010
  166.     TSTRING008(INTEGER002) = ""
  167.     InputStr "@X08■ _", TSTRING008(INTEGER002), 0, 76, Mask_Pwd(), 512
  168.     Newline
  169.     If (Upper(TSTRING008(INTEGER002)) == "/S") Goto LABEL011
  170.     If (TSTRING008(1) == "") Goto LABEL001
  171.     If (Upper(TSTRING008(INTEGER002)) == "/A") Goto LABEL001
  172.     If (INTEGER002 > 15) Goto LABEL011
  173.     INTEGER002 = INTEGER002 + 1
  174.     Goto LABEL010
  175.     :LABEL011
  176.     TINTEGER004(8) = 0
  177.     TSTRING005(8) = Date()
  178.     TSTRING007(8) = Date()
  179.     FCreate 1, PPEPath() + "DATA\8.", 1, 3
  180.     FPutLn 1, "@X08┌───────────────────────┤  @X0F U@X07lt@X08ra News PPE v1.0   ├───────────────────────────┐"
  181.     FPutLn 1, "└─────────────────────────────────────────────────────────────────────────────┘@X07"
  182.     For INTEGER001 = 1 To INTEGER002 - 1
  183.         Newline
  184.         FPutLn 1, " " + TSTRING008(INTEGER001)
  185.     Next
  186.     AnsiPos 0, 20
  187.     For INTEGER001 = INTEGER002 To 15
  188.         FPutLn 1, ""
  189.     Next
  190.     FPutLn 1, "@X08──────────────────────────────────────────────────────────────────────────────"
  191.     FPutLn 1, "@X0FN@X07ew@X08s Flash Posted By: " + U_Name()
  192.     FClose 1
  193.     FCreate 1, PPEPath() + "DATA/TITLE.DAT", 1, 3
  194.     FPutLn 1, STRING009
  195.     FClose 1
  196.     FCreate 1, PPEPath() + "DATA/NEWS.DAT", 1, 3
  197.     For INTEGER002 = 1 To 9
  198.         FPutLn 1, TSTRING007(INTEGER002)
  199.     Next
  200.     FClose 1
  201.     Goto LABEL001
  202.     :LABEL012
  203.     TINTEGER007(INTEGER002) = Right(TSTRING005(INTEGER002), Len(TSTRING005(INTEGER002)) - 6)
  204.     TINTEGER008(INTEGER002) = Right(TSTRING007(INTEGER002), Len(TSTRING007(INTEGER002)) - 6)
  205.     If (TINTEGER007(INTEGER002) > TINTEGER008(INTEGER002)) Return
  206.     TINTEGER009(INTEGER002) = Mid(TSTRING005(INTEGER002), 4, 2)
  207.     TINTEGER010(INTEGER002) = Mid(TSTRING007(INTEGER002), 4, 2)
  208.     If (TINTEGER009(INTEGER002) > TINTEGER010(INTEGER002)) Return
  209.     TINTEGER011(INTEGER002) = Left(TSTRING005(INTEGER002), Len(TSTRING005(INTEGER002)) - 6)
  210.     TINTEGER012(INTEGER002) = Left(TSTRING007(INTEGER002), Len(TSTRING007(INTEGER002)) - 6)
  211.     If (TINTEGER011(INTEGER002) > TINTEGER012(INTEGER002)) Return
  212.     TINTEGER004(INTEGER002) = 0
  213.     TSTRING005(INTEGER002) = "00-00-00"
  214.     Return
  215.  
  216. ;------------------------------------------------------------------------------
  217. ;
  218. ; Usage report (before postprocessing)
  219. ;
  220. ; ■ Statements used :
  221. ;
  222. ;    1       End
  223. ;    5       Cls
  224. ;    1       Wait
  225. ;    39      Goto 
  226. ;    51      Let 
  227. ;    11      Print 
  228. ;    29      If 
  229. ;    4       DispFile 
  230. ;    4       FCreate 
  231. ;    3       FOpen 
  232. ;    7       FClose 
  233. ;    3       FGet 
  234. ;    9       FPutLn 
  235. ;    2       InputStr 
  236. ;    8       Gosub 
  237. ;    10      Return
  238. ;    2       Newline
  239. ;    14      AnsiPos 
  240. ;
  241. ;
  242. ; ■ Functions used :
  243. ;
  244. ;    40      +
  245. ;    9       -
  246. ;    12      ==
  247. ;    2       <>
  248. ;    10      <
  249. ;    9       <=
  250. ;    6       >
  251. ;    18      >=
  252. ;    15      !
  253. ;    19      &&
  254. ;    10      ||
  255. ;    6       Len(
  256. ;    3       Upper()
  257. ;    2       Mid()
  258. ;    3       Left()
  259. ;    3       Right()
  260. ;    2       Chr()
  261. ;    3       Date()
  262. ;    2       U_Name()
  263. ;    2       Replace()
  264. ;    2       Strip()
  265. ;    1       Inkey()
  266. ;    5       String()
  267. ;    1       Mask_Pwd()
  268. ;    1       Mask_Ascii()
  269. ;    12      PPEPath()
  270. ;    1       Exist()
  271. ;
  272. ;------------------------------------------------------------------------------
  273. ;
  274. ; Analysis flags : No flag
  275. ;
  276. ;------------------------------------------------------------------------------
  277. ;
  278. ; Postprocessing report
  279. ;
  280. ;    9       For/Next
  281. ;    0       While/EndWhile
  282. ;    3       If/Then or If/Then/Else
  283. ;    1       Select Case
  284. ;
  285. ;------------------------------------------------------------------------------
  286. ;                 AEGiS Corp - Break the routines, code against the machines!
  287. ;------------------------------------------------------------------------------
  288.